package com.suning.sawp.member.service;

import java.util.List;
import java.util.Map;

import com.suning.sawp.dto.mainpush.StoreManDto;
import com.suning.sawp.member.vo.ActivityStatisVo;
import com.suning.sawp.member.vo.CateStatisDetailVo;
import com.suning.sawp.member.vo.ClientStatisDetailVo;
import com.suning.sawp.member.vo.EmpStatisDetailVo;

/**
 * 
 * 活动统计服务<br> 
 *
 * @author 14060886 祝翔龙
 */
public interface ActivityStatisService {

    /**
     * 
     * 功能描述: 店长查询外拓活动统计信息<br>
     *
     * @param storeCode
     * @param startIndex
     * @return
     */
    public List<ActivityStatisVo> queryActivityStatisByStore(String storeCode, String startIndex);
    
    /**
     * 
     * 功能描述: 督导查询外拓活动统计信息<br>
     *
     * @param storeMan
     * @param cateCode
     * @param startIndex
     * @return
     */
    public Map<String, Object> queryActivityStatisByCate(StoreManDto storeMan, String cateCode, String startIndex);
    
    /**
     * 
     * 功能描述: 店员查询外拓活动统计信息<br>
     *
     * @param storeCode
     * @param employeeId
     * @param startIndex
     * @return
     */
    public List<ActivityStatisVo> queryActivityStatisByEmp(String storeCode, String employeeId, String startIndex);
    
    /**
     * 
     * 功能描述: 查询外拓活动统计详情(品类分组)<br>
     *
     * @param storeCode
     * @param activityId
     * @param source
     * @param mode
     * @return
     */
    public CateStatisDetailVo queryCateStatisDetailByStore(String storeCode, String activityId, String source, String mode);
    
    /**
     * 
     * 功能描述: 查询品类统计详情(店员分组)<br>
     *
     * @param storeCode
     * @param activityId
     * @param cateCode
     * @param source
     * @param mode
     * @return
     */
    public EmpStatisDetailVo queryEmpStatisDetailByCate(String storeCode, String activityId, String cateCode, String source, String mode);
    
    /**
     * 
     * 功能描述: 查询客户统计详情<br>
     *
     * @param storeCode
     * @param activityId
     * @param cateCode
     * @param employeeId
     * @param source
     * @param mode
     * @param startIndex
     * @return
     */
    public ClientStatisDetailVo queryClientStatisDetailByEmp(String storeCode, String activityId, String cateCode, String employeeId, 
            String source, String mode, String startIndex);

}
